home *** CD-ROM | disk | FTP | other *** search
/ BCI NET / BCI NET Dec 94.iso / archives / programming / gui / gadtoolsbox20c.lha / GadToolsBox / GTXLib / C_includes / gadtoolsbox / forms.h next >
C/C++ Source or Header  |  1993-04-12  |  6KB  |  199 lines

  1. #ifndef GADTOOLSBOX_FORMS_H
  2. #define GADTOOLSBOX_FORMS_H
  3. /*
  4. **      $VER: gadtoolsbox/forms.h 39.1 (12.4.93)
  5. **      GTXLib headers release 2.0.
  6. **
  7. **      GadToolsBox IFF FORM definitions.
  8. **
  9. **      (C) Copyright 1992,1993 Jaba Development.
  10. **          Written by Jan van den Baard
  11. **/
  12.  
  13. #ifndef EXEC_TYPES_H
  14. #include <exec/types.h>
  15. #endif
  16.  
  17. #ifndef LIBRARIES_GADTOOLS_H
  18. #include <libraries/gadtools.h>
  19. #endif
  20.  
  21. #ifndef LIBRARIES_IFFPARSE_H
  22. #include <libraries/iffparse.h>
  23. #endif
  24.  
  25. /* GadToolsBox FORM identifiers */
  26. #define ID_GXMN             MAKE_ID('G','X','M','N')
  27. #define ID_GXTX             MAKE_ID('G','X','T','X')
  28. #define ID_GXBX             MAKE_ID('G','X','B','X')
  29. #define ID_GXGA             MAKE_ID('G','X','G','A')
  30. #define ID_GXWD             MAKE_ID('G','X','W','D')
  31. #define ID_GXUI             MAKE_ID('G','X','U','I')
  32.  
  33. /* GadToolsBox chunk identifiers. */
  34. #define ID_MEDA             MAKE_ID('M','E','D','A')
  35. #define ID_ITXT             MAKE_ID('I','T','X','T')
  36. #define ID_BBOX             MAKE_ID('B','B','O','X')
  37. #define ID_GADA             MAKE_ID('G','A','D','A')
  38. #define ID_WDDA             MAKE_ID('W','D','D','A')
  39. #define ID_GGUI             MAKE_ID('G','G','U','I')
  40.  
  41. #define ID_VERS             MAKE_ID('V','E','R','S')
  42.  
  43. /* Version (ID_VERS) chunk...
  44. ** This chunk will be used in the future for chunk format changes
  45. ** that might occure.
  46. **/
  47. typedef struct {
  48.     UWORD                   vr_Version;
  49.     UWORD                   vr_Flags;
  50.     ULONG                   vr_Reserved[ 4 ];
  51. } VERSION;
  52.  
  53. /* NewMenu (ID_MEDA) chunk... */
  54. #define MAXMENUTITLE        80
  55. #define MAXMENULABEL        34
  56. #define MAXSHORTCUT         2
  57.  
  58. #define MENUVERSION         0
  59.  
  60. typedef struct {
  61.     struct NewMenu          mda_NewMenu;
  62.     UBYTE                   mda_Title[ MAXMENUTITLE ];
  63.     UBYTE                   mda_Label[ MAXMENULABEL ];
  64.     UBYTE                   mda_ShortCut[ MAXSHORTCUT ];
  65.     UWORD                   mda_Flags;
  66. } MENUDATA;
  67.  
  68. /* IntuiText (ID_ITXT) chunk... */
  69. #define MAXTEXTLENGTH       80
  70.  
  71. #define ITXTVERSION         0
  72.  
  73. typedef struct {
  74.     struct IntuiText        it_IText;
  75.     UBYTE                   it_Text[ MAXTEXTLENGTH ];
  76. } ITEXTDATA;
  77.  
  78. /* BevelBox (ID_BBOX) chunk... */
  79. #define BBOXVERSION         0
  80.  
  81. typedef struct {
  82.     WORD                    bbx_Left;
  83.     WORD                    bbx_Top;
  84.     UWORD                   bbx_Width;
  85.     UWORD                   bbx_Height;
  86.     UWORD                   bbx_Flags;
  87. } BBOXDATA;
  88.  
  89. /* BevelBox flag bits */
  90. #define BBF_RECESSED        (1<<0)
  91. #define BBF_DROPBOX         (1<<1)
  92.  
  93. /* NewGadget (ID_GADA) chunk... */
  94. #define MAXGADGETTEXT       80
  95. #define MAXGADGETLABEL      34
  96.  
  97. #define GADGETVERSION       0
  98.  
  99. typedef struct {
  100.     struct NewGadget        gd_NewGadget;
  101.     UBYTE                   gd_GadgetText[ MAXGADGETTEXT ];
  102.     UBYTE                   gd_GadgetLabel[ MAXGADGETLABEL ];
  103.     ULONG                   gd_Flags;
  104.     UWORD                   gd_Kind;
  105.     UWORD                   gd_NumTags;
  106.     ULONG                   gd_Reserved[ 4 ];
  107. } GADGETDATA;
  108.  
  109. /* NewGadget flag bits */
  110. #define GDF_ISLOCKED        (1<<5)
  111. #define GDF_NEEDLOCK        (1<<6)
  112.  
  113. /* Window (ID_WDDA) chunk... */
  114. #define MAXWINDOWNAME       34
  115. #define MAXWINDOWTITLE      80
  116. #define MAXWDSCREENTITLE    80
  117.  
  118. #define WINDOWVERSION       0
  119.  
  120. typedef struct {
  121.     UBYTE                   wda_Name[ MAXWINDOWNAME ];
  122.     UBYTE                   wda_Title[ MAXWINDOWTITLE ];
  123.     UBYTE                   wda_ScreenTitle[ MAXWDSCREENTITLE ];
  124.     UWORD                   wda_NumTags;
  125.     UWORD                   wda_IDCountFrom;
  126.     ULONG                   wda_IDCMP;
  127.     ULONG                   wda_WindowFlags;
  128.     ULONG                   wda_TagFlags;
  129.     UWORD                   wda_InnerWidth;
  130.     UWORD                   wda_InnerHeight;
  131.     BOOL                    wda_ShowTitle;
  132.     UWORD                   wda_MouseQueue;
  133.     UWORD                   wda_RptQueue;
  134.     UWORD                   wda_Flags;
  135.     UWORD                   wda_LeftBorder;
  136.     UWORD                   wda_TopBorder;
  137.     UBYTE                   wda_Reserved[ 10 ];
  138. } WINDOWDATA;
  139.  
  140. /* Window tag flag bits */
  141. #define WDF_INNERWIDTH      (1<<0)
  142. #define WDF_INNERHEIGHT     (1<<1)
  143. #define WDF_ZOOM            (1<<2)
  144. #define WDF_MOUSEQUEUE      (1<<3)
  145. #define WDF_RPTQUEUE        (1<<4)
  146. #define WDF_AUTOADJUST      (1<<5)
  147. #define WDF_DEFAULTZOOM     (1<<6)
  148. #define WDF_FALLBACK        (1<<7)
  149.  
  150. /* GUI (ID_GGUI) chunk... */
  151. #define MAXSCREENTITLE      80
  152. #define FONTNAMELENGTH      128
  153. #define MAXCOLORSPEC        33
  154. #define MAXDRIPENS          10
  155. #define MAXMOREDRIPENS      10
  156.  
  157. #define GUIVERSION          0
  158.  
  159. typedef struct {
  160.     ULONG                   gui_Flags0;
  161.     UBYTE                   gui_ScreenTitle[ MAXSCREENTITLE ];
  162.     UWORD                   gui_Left;
  163.     UWORD                   gui_Top;
  164.     UWORD                   gui_Width;
  165.     UWORD                   gui_Height;
  166.     UWORD                   gui_Depth;
  167.     ULONG                   gui_DisplayID;
  168.     UWORD                   gui_Overscan;
  169.     UWORD                   gui_DriPens[ MAXDRIPENS ];
  170.     struct ColorSpec        gui_Colors[ MAXCOLORSPEC ];
  171.     UBYTE                   gui_FontName[ FONTNAMELENGTH ];
  172.     struct TextAttr         gui_Font;
  173.     UWORD                   gui_MoreDriPens[ MAXMOREDRIPENS ];
  174.     ULONG                   gui_Reserved[ 5 ];
  175.    /*
  176.     * The following fields are private to
  177.     * GadToolsBox and they should not be useful
  178.     * to you!
  179.     */
  180.     ULONG                   gui_Flags1;
  181.     UWORD                   gui_StdScreenWidth;
  182.     UWORD                   gui_StdScreenHeight;
  183.     UWORD                   gui_ActiveKind;
  184.     UWORD                   gui_LastProject;
  185.     UWORD                   gui_GridX;
  186.     UWORD                   gui_GridY;
  187.     UWORD                   gui_OffX;
  188.     UWORD                   gui_OffY;
  189.     UWORD                   gui_Reserved1[ 7 ];
  190. } GUIDATA;
  191.  
  192. /* GUI gui_Flags0 flag bits */
  193. #define GU0_AUTOSCROLL      (1<<0)
  194. #define GU0_WORKBENCH       (1<<1)
  195. #define GU0_PUBLIC          (1<<2)
  196. #define GU0_CUSTOM          (1<<3)
  197.  
  198. #endif
  199.